Runtime Architecture |
This topic describes the runtime architecture of BAM. |
|
From real-time monitoring perspective on BAM, right data should be available at right time and harmonized to process it and relevant actions must be triggered. Different aspects of BAM runtime architecture are depicted below:
- Data collection and harmonization: Process Platform BAM has three sources of data:
- Process Platform Business process data
- Application Web services
- Enterprise Data Objects
Process Platform Business process data and Web services data is harmonized as Process Monitoring Object.
- Enterprise Data Object:The EDOs are synchronized using Cordys MDM component. Enterprise application database acts as the MDM spoke node and BAM database acts as the MDM Hub node. Whenever any changes happen in the application database then data is synchronized to the corresponding tables residing in BAM database that means data is synchronized from spoke node to Hub node.
- Event Processing:
Process events are identified by BAM server, based on process state transitions in the database. Whenever a process event occurs then Event processing engine checks whether it is a trigger event for any Business Event Response. A pre-processing of Event condition is done using Xpath expression evaluation to check if event condition will be met in rule engine and if event condition is going to be met then Business Event Response object is inserted in BAM repository to trigger rules and corresponding corrective and preventive actions (CAPA).
When the temporal (time- based) events are defined on process or activity lead time then an event monitor is started, which is embedded schedule in BAM server, with the maximum lead time defined as event monitoring time to check completion of process or activity. This concept is also known as 'proactive surveillance', where system proactively does surveillance on happening of certain events.
You can define temporal condition along with the data conditions.
- Business Measure Execution
Business Measure Web services are executed by fetching and executing corresponding SQL query from BAM meta database.
- KPI Monitoring
KPIs are monitored by monitoring agent (Scheduler) by invoking KPI Web service with parameters specified during design-time in KPI Editor. KPI Web service is hosted in the BAM Server. The BAM Server invokes corresponding Business Measure Web services and output is given to KPI engine where the expression is evaluated to calculate KPI value. The KPI Monitor object, filled with KPI value, is given to the rule engine, which evaluates the corresponding rules against the defined KPI ranges and corresponding corrective or preventive actions (CAPA) are triggered. KPI values are stored in the BAM repository for trend analysis.
- Admin Services
Different admin services like publish, unpublish, delete and so on are available as part of BAM Admin services.
- Dashboard
The BAM dashboard charts are built using fusion charts, flex based technology created from Process Platform XForms designer. On drill-down from one view to another, parameters are passed from 'x-axis' of source view to target view. Users can also drill-down to default view of Process Monitoring Object and from there they can navigate to process instance graphical or grid view.